NAND flash memory, as well as other types of non-volatile memories (“NVMs”), are commonly used in electronic devices. For example, consumer electronics such as portable media players often include flash memory as mass storage to store music, videos, and other media. Some consumer electronics also use flash memory to store firmware and other information or program code needed for operation of the device.
Flash memory and other NVM are composed of arrays of memory cells, where each memory cell can store one or more bits of information. Vendors typically supply NVMs where a small proportion of the memory cells are defective. An electronic device can handle these defective cells, as well as any cells that become defective over time, using various techniques. For example, the electronic device can employ an error correcting code and perform bad block management.
To ensure that an NVM used in an electronic device does not initially contain too many defective cells, device manufacturers sometimes build in components for testing the NVMs. In particular, the electronic device may be provided with a dedicated test memory, which can be used to store various parameters and program code to test the NVM memory arrays. The testing components can produce a pass/fail indicator to signal whether the overall NVM meets the device manufacturer's or vendor's specification for defective cells.